Add a new chunk by clicking the Insert Chunk button on the toolbar or by pressing Ctrl+Alt+I. ##Introducción Introducción # Introducción En este análisis se presenta la historia de los datos sobre …, se cargan las bases de datos, se limpian y se generan visualizaciones clave.

Rows: 1,867
Columns: 29
$ `Country Name`  <chr> "Afghanistan", "Afghanistan", "Afghanistan", "A…
$ `Country Code`  <chr> "AFG", "AFG", "AFG", "AFG", "AFG", "AFG", "AFG"…
$ `Series Name`   <chr> "GDP per capita (current US$)", "Life expectanc…
$ `Series Code`   <chr> "NY.GDP.PCAP.CD", "SP.DYN.LE00.IN", "SE.ADT.LIT…
$ `2000 [YR2000]` <dbl> 1.749310e+02, 5.500500e+01, NA, 5.047608e-02, 2…
$ `2001 [YR2001]` <dbl> 1.387068e+02, 5.551100e+01, NA, 4.657295e-02, 2…
$ `2002 [YR2002]` <dbl> 1.789541e+02, 5.622500e+01, NA, 4.407778e-02, 2…
$ `2003 [YR2003]` <dbl> 1.988711e+02, 5.717100e+01, NA, 4.434073e-02, 2…
$ `2004 [YR2004]` <dbl> 2.217637e+02, 5.781000e+01, NA, 3.789793e-02, 2…
$ `2005 [YR2005]` <dbl> 2.541842e+02, 5.824700e+01, NA, 5.188783e-02, 2…
$ `2006 [YR2006]` <dbl> 2.742186e+02, 5.855300e+01, NA, 5.539234e-02, 2…
$ `2007 [YR2007]` <dbl> 3.762232e+02, 5.895600e+01, NA, 7.756123e-02, 2…
$ `2008 [YR2008]` <dbl> 3.817332e+02, 5.970800e+01, NA, 1.447515e-01, 2…
$ `2009 [YR2009]` <dbl> 4.520537e+02, 6.024800e+01, NA, 2.214657e-01, 2…
$ `2010 [YR2010]` <dbl> 5.606215e+02, 6.070200e+01, NA, 2.753810e-01, 2…
$ `2011 [YR2011]` <dbl> 6.066947e+02, 6.125000e+01, 3.100000e+01, 3.887…
$ `2012 [YR2012]` <dbl> 6.514171e+02, 6.173500e+01, NA, 3.196266e-01, 3…
$ `2013 [YR2013]` <dbl> 6.370871e+02, 6.218800e+01, NA, 2.624696e-01, 3…
$ `2014 [YR2014]` <dbl> 6.250549e+02, 6.226000e+01, NA, 2.386428e-01, 3…
$ `2015 [YR2015]` <dbl> 5.655697e+02, 6.227000e+01, 3.375384e+01, 2.467…
$ `2016 [YR2016]` <dbl> 5.220822e+02, 6.264600e+01, NA, 2.169299e-01, 3…
$ `2017 [YR2017]` <dbl> 5.254698e+02, 6.240600e+01, NA, 2.260112e-01, 3…
$ `2018 [YR2018]` <dbl> 4.913372e+02, 6.244300e+01, NA, 2.158776e-01, 3…
$ `2019 [YR2019]` <dbl> 4.966025e+02, 6.294100e+01, NA, 1.914908e-01, 3…
$ `2020 [YR2020]` <dbl> 5.107871e+02, 6.145400e+01, NA, 1.805550e-01, 3…
$ `2021 [YR2021]` <dbl> 3.564962e+02, 6.041700e+01, 3.700000e+01, 1.982…
$ `2022 [YR2022]` <dbl> 3.572612e+02, 6.561700e+01, NA, 2.035519e-01, 4…
$ `2023 [YR2023]` <dbl> 4.157074e+02, 6.603500e+01, NA, 2.100434e-01, 4…
$ `2024 [YR2024]` <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,…

When you save the notebook, an HTML file containing the code and output will be saved alongside it (click the Preview button or press Ctrl+Shift+K to preview the HTML file).

The preview shows you a rendered HTML copy of the contents of the editor. Consequently, unlike Knit, Preview does not run any R code chunks. Instead, the output of the chunk when it was last run in the editor is displayed.

1) Introducción

En un mundo cada vez más globalizado, comprender las diferencias y similitudes entre países en términos de desarrollo económico, social y ambiental es fundamental para la toma de decisiones y formulación de políticas públicas. Este proyecto realiza un análisis exploratorio de datos (EDA) sobre el conjunto de datos World Development Indicators (WDI) del Banco Mundial, con el objetivo de descubrir patrones, relaciones y tendencias clave entre distintas variables de desarrollo.

2) Descripción del Problema:

La gran cantidad de indicadores disponibles en los datos del Banco Mundial permite explorar preguntas como: ¿Cómo ha evolucionado el acceso a la educación y la salud en distintas regiones? ¿Existe una relación entre el PIB per cápita y la esperanza de vida? ¿Qué países muestran anomalías en sus indicadores ambientales? ¿Cómo se relacionan las múltiples dimensiones del desarrollo en el tiempo? ¿Se relaciona el nivel de alfabetización con la esperanza de vida de la persona?

Este proyecto se propone utilizar técnicas de visualización y análisis exploratorio para generar insights significativos que nos ayuden a responder algunas de estas preguntas y a su mismo tiempo que el mismo espectador de estas pueda generar conclusiones por el mismo.

3) Fuentes:

Este proyecto de análisis se basa mayormente en el dataset de World Development Indicators (WDI), disponible públicamente en World Bank Data360. Este conjunto contiene más de mil indicadores para más de 200 países desde 1960 hasta la actualidad. Para esta investigación, se seleccionaron los siguientes indicadores clave: PIB per cápita (USD actuales) – NY.GDP.PCAP.CD Esperanza de vida al nacer (años) – SP.DYN.LE00.IN Tasa de alfabetización (% de adultos) – SE.ADT.LITR.ZS Emisiones de CO₂ (toneladas per cápita) – EN.ATM.CO2E.PC Población total – SP.POP.TOTL Porcentaje de acceso a servicios básicos – SH.H2O.BASW.ZS

4) Gráficas:

Análisis unidimensional

1. Distribución del PIB per cápita (2022)

Distribución: Se observa una distribución asimétrica hacia la derecha.

Tendencia general: La mayoría de los países tienen un PIB per cápita inferior a los $10,000 USD.

Un número reducido de países como Suiza, Noruega, Catar y Estados Unidos muestran niveles extremadamente altos (>60,000 USD).

Esto refleja la desigualdad económica global, donde muchos países siguen en desarrollo mientras que una minoría posee economías altamente desarrolladas.

2.Esperanza de Vida por Region (2022)

Distribución general: La gráfica muestra las diferencias en la esperanza de vida al nacer entre regiones.

Se observa que las regiones de Europa y América del Norte tienen un rango de esperanza de vida bastante alto y estrecho, mientras que África Subsahariana muestra una mayor dispersión y valores más bajos.

Algunas regiones, como Asia Oriental, tienen una alta esperanza de vida, pero con variabilidad dependiendo de los países dentro de la región.

Valores extremos (outliers): Se pueden identificar algunas regiones con valores atípicos, como países con niveles extremadamente altos de esperanza de vida (por ejemplo, en Europa o América del Norte).

Tendencia general: Regiones como África Subsahariana y Asia Meridional tienen una media de esperanza de vida más baja y una gran dispersión, lo que indica disparidades significativas entre los países dentro de estas regiones.

3. Grafico de densidad del CO2

Distribución: Altamente asimétrica con una larga cola derecha.

Tendencia general:

La mayoría de países emiten menos de 5 toneladas de CO₂ per cápita.

Casos extremos como Catar y Emiratos Árabes Unidos superan las 25 toneladas, destacando como outliers.

Esto refleja una enorme desigualdad en términos de responsabilidad ambiental y desarrollo económico.

4. ScatterPlot del PIB vs la Esperzanza de Vida

Se observa una correlación positiva: los países con mayor PIB per cápita tienden a tener una mayor esperanza de vida.

Existen excepciones notables, como Estados Unidos, que tiene un PIB alto pero una esperanza de vida más baja en comparación con otros países de ingreso similar.

La escala logarítmica permite observar con mayor claridad los países de bajos y medianos ingresos, que de otro modo quedarían agrupados.

5. BubblePlot Alfabetizacion Agua Poblacion (2022)

Es probable que los países con una mayor tasa de alfabetización también presenten un mayor porcentaje de acceso a agua básica.

Se pueden observar excepciones en países con diferentes niveles de población, donde la falta de alfabetización o de acceso a agua básica puede ser más pronunciada.

Todavía me falta pero la estructura que ya está las secciones de .r, es dandole al c+ de arriba, opción .r, y de ahí se pone el codigo de importación en el medio de estás secciones de texto

Nota: Si no logramos, lit solo copiamos el codigo.

LS0tDQp0aXRsZTogIkFuw6FsaXNpcyBkZWwgRGF0YXNldCBNdW5kaWFsIFdESSBkZWwgQmFuY28gTXVuZGlhbCINCmF1dGhvcjogIk1hdGhldyBDb3JkZXJvIGUgSWFuIFVnYWxkZSINCm91dHB1dDogDQogIGh0bWxfbm90ZWJvb2s6DQogICAgdG9jOiB0cnVlDQogICAgdG9jX2RlcHRoOiAyDQogICAgY29kZV9mb2xkaW5nOiBoaWRlDQotLS0NCg0KYGBge3Igc2V0dXAsIGluY2x1ZGU9IEZBTFNFfQ0KIyBGaWphciBlbCB3b3JraW5nIGRpcmVjdG9yeSBhbCBkZWwgLlJtZA0KaWYgKGludGVyYWN0aXZlKCkgJiYgcmVxdWlyZU5hbWVzcGFjZSgicnN0dWRpb2FwaSIsIHF1aWV0bHkgPSBUUlVFKSkgew0KICBzZXR3ZChkaXJuYW1lKHJzdHVkaW9hcGk6OmdldEFjdGl2ZURvY3VtZW50Q29udGV4dCgpJHBhdGgpKQ0KfQ0KDQprbml0cjo6b3B0c19jaHVuayRzZXQoDQogIGVjaG8gICAgPSBGQUxTRSwNCiAgbWVzc2FnZSA9IEZBTFNFLA0KICB3YXJuaW5nID0gRkFMU0UNCikNCg0KbGlicmFyeShyZWFkcikNCmxpYnJhcnkoZHBseXIpDQpsaWJyYXJ5KHRpZHlyKQ0KbGlicmFyeShzdHJpbmdyKQ0KbGlicmFyeShwbG90bHkpDQpgYGANCg0KQWRkIGEgbmV3IGNodW5rIGJ5IGNsaWNraW5nIHRoZSAqSW5zZXJ0IENodW5rKiBidXR0b24gb24gdGhlIHRvb2xiYXIgb3IgYnkgcHJlc3NpbmcgKkN0cmwrQWx0K0kqLiAjI0ludHJvZHVjY2nDs24gSW50cm9kdWNjacOzbiBcIyBJbnRyb2R1Y2Npw7NuIEVuIGVzdGUgYW7DoWxpc2lzIHNlIHByZXNlbnRhIGxhIGhpc3RvcmlhIGRlIGxvcyBkYXRvcyBzb2JyZSAuLi4sIHNlIGNhcmdhbiBsYXMgYmFzZXMgZGUgZGF0b3MsIHNlIGxpbXBpYW4geSBzZSBnZW5lcmFuIHZpc3VhbGl6YWNpb25lcyBjbGF2ZS4NCg0KYGBge3J9DQpzb3VyY2UoIkltcG9ydERhdGFzZXQuUiIsIGxvY2FsID0ga25pdHI6OmtuaXRfZ2xvYmFsKCkpDQpgYGANCg0KYGBge3J9DQpzb3VyY2UoIlNjYXR0ZXJQbG90UElCdnNFc3BlcmFuemFWaWRhNC5SIiwgbG9jYWwgPSBrbml0cjo6a25pdF9nbG9iYWwoKSkNCmBgYA0KDQpXaGVuIHlvdSBzYXZlIHRoZSBub3RlYm9vaywgYW4gSFRNTCBmaWxlIGNvbnRhaW5pbmcgdGhlIGNvZGUgYW5kIG91dHB1dCB3aWxsIGJlIHNhdmVkIGFsb25nc2lkZSBpdCAoY2xpY2sgdGhlICpQcmV2aWV3KiBidXR0b24gb3IgcHJlc3MgKkN0cmwrU2hpZnQrSyogdG8gcHJldmlldyB0aGUgSFRNTCBmaWxlKS4NCg0KVGhlIHByZXZpZXcgc2hvd3MgeW91IGEgcmVuZGVyZWQgSFRNTCBjb3B5IG9mIHRoZSBjb250ZW50cyBvZiB0aGUgZWRpdG9yLiBDb25zZXF1ZW50bHksIHVubGlrZSAqS25pdCosICpQcmV2aWV3KiBkb2VzIG5vdCBydW4gYW55IFIgY29kZSBjaHVua3MuIEluc3RlYWQsIHRoZSBvdXRwdXQgb2YgdGhlIGNodW5rIHdoZW4gaXQgd2FzIGxhc3QgcnVuIGluIHRoZSBlZGl0b3IgaXMgZGlzcGxheWVkLg0KDQojIDEpIEludHJvZHVjY2nDs24NCg0KRW4gdW4gbXVuZG8gY2FkYSB2ZXogbcOhcyBnbG9iYWxpemFkbywgY29tcHJlbmRlciBsYXMgZGlmZXJlbmNpYXMgeSBzaW1pbGl0dWRlcyBlbnRyZSBwYcOtc2VzIGVuIHTDqXJtaW5vcyBkZSBkZXNhcnJvbGxvIGVjb27Ds21pY28sIHNvY2lhbCB5IGFtYmllbnRhbCBlcyBmdW5kYW1lbnRhbCBwYXJhIGxhIHRvbWEgZGUgZGVjaXNpb25lcyB5IGZvcm11bGFjacOzbiBkZSBwb2zDrXRpY2FzIHDDumJsaWNhcy4gRXN0ZSBwcm95ZWN0byByZWFsaXphIHVuIGFuw6FsaXNpcyBleHBsb3JhdG9yaW8gZGUgZGF0b3MgKEVEQSkgc29icmUgZWwgY29uanVudG8gZGUgZGF0b3MgV29ybGQgRGV2ZWxvcG1lbnQgSW5kaWNhdG9ycyAoV0RJKSBkZWwgQmFuY28gTXVuZGlhbCwgY29uIGVsIG9iamV0aXZvIGRlIGRlc2N1YnJpciBwYXRyb25lcywgcmVsYWNpb25lcyB5IHRlbmRlbmNpYXMgY2xhdmUgZW50cmUgZGlzdGludGFzIHZhcmlhYmxlcyBkZSBkZXNhcnJvbGxvLg0KDQojIDIpIERlc2NyaXBjacOzbiBkZWwgUHJvYmxlbWE6DQoNCkxhIGdyYW4gY2FudGlkYWQgZGUgaW5kaWNhZG9yZXMgZGlzcG9uaWJsZXMgZW4gbG9zIGRhdG9zIGRlbCBCYW5jbyBNdW5kaWFsIHBlcm1pdGUgZXhwbG9yYXIgcHJlZ3VudGFzIGNvbW86IMK/Q8OzbW8gaGEgZXZvbHVjaW9uYWRvIGVsIGFjY2VzbyBhIGxhIGVkdWNhY2nDs24geSBsYSBzYWx1ZCBlbiBkaXN0aW50YXMgcmVnaW9uZXM/IMK/RXhpc3RlIHVuYSByZWxhY2nDs24gZW50cmUgZWwgUElCIHBlciBjw6FwaXRhIHkgbGEgZXNwZXJhbnphIGRlIHZpZGE/IMK/UXXDqSBwYcOtc2VzIG11ZXN0cmFuIGFub21hbMOtYXMgZW4gc3VzIGluZGljYWRvcmVzIGFtYmllbnRhbGVzPyDCv0PDs21vIHNlIHJlbGFjaW9uYW4gbGFzIG3Dumx0aXBsZXMgZGltZW5zaW9uZXMgZGVsIGRlc2Fycm9sbG8gZW4gZWwgdGllbXBvPyDCv1NlIHJlbGFjaW9uYSBlbCBuaXZlbCBkZSBhbGZhYmV0aXphY2nDs24gY29uIGxhIGVzcGVyYW56YSBkZSB2aWRhIGRlIGxhIHBlcnNvbmE/DQoNCkVzdGUgcHJveWVjdG8gc2UgcHJvcG9uZSB1dGlsaXphciB0w6ljbmljYXMgZGUgdmlzdWFsaXphY2nDs24geSBhbsOhbGlzaXMgZXhwbG9yYXRvcmlvIHBhcmEgZ2VuZXJhciBpbnNpZ2h0cyBzaWduaWZpY2F0aXZvcyBxdWUgbm9zIGF5dWRlbiBhIHJlc3BvbmRlciBhbGd1bmFzIGRlIGVzdGFzIHByZWd1bnRhcyB5IGEgc3UgbWlzbW8gdGllbXBvIHF1ZSBlbCBtaXNtbyBlc3BlY3RhZG9yIGRlIGVzdGFzIHB1ZWRhIGdlbmVyYXIgY29uY2x1c2lvbmVzIHBvciBlbCBtaXNtby4NCg0KIyAzKSBGdWVudGVzOg0KDQpFc3RlIHByb3llY3RvIGRlIGFuw6FsaXNpcyBzZSBiYXNhIG1heW9ybWVudGUgZW4gZWwgZGF0YXNldCBkZSBXb3JsZCBEZXZlbG9wbWVudCBJbmRpY2F0b3JzIChXREkpLCBkaXNwb25pYmxlIHDDumJsaWNhbWVudGUgZW4gV29ybGQgQmFuayBEYXRhMzYwLiBFc3RlIGNvbmp1bnRvIGNvbnRpZW5lIG3DoXMgZGUgbWlsIGluZGljYWRvcmVzIHBhcmEgbcOhcyBkZSAyMDAgcGHDrXNlcyBkZXNkZSAxOTYwIGhhc3RhIGxhIGFjdHVhbGlkYWQuIFBhcmEgZXN0YSBpbnZlc3RpZ2FjacOzbiwgc2Ugc2VsZWNjaW9uYXJvbiBsb3Mgc2lndWllbnRlcyBpbmRpY2Fkb3JlcyBjbGF2ZTogUElCIHBlciBjw6FwaXRhIChVU0QgYWN0dWFsZXMpIOKAkyBOWS5HRFAuUENBUC5DRCBFc3BlcmFuemEgZGUgdmlkYSBhbCBuYWNlciAoYcOxb3MpIOKAkyBTUC5EWU4uTEUwMC5JTiBUYXNhIGRlIGFsZmFiZXRpemFjacOzbiAoJSBkZSBhZHVsdG9zKSDigJMgU0UuQURULkxJVFIuWlMgRW1pc2lvbmVzIGRlIENP4oKCICh0b25lbGFkYXMgcGVyIGPDoXBpdGEpIOKAkyBFTi5BVE0uQ08yRS5QQyBQb2JsYWNpw7NuIHRvdGFsIOKAkyBTUC5QT1AuVE9UTCBQb3JjZW50YWplIGRlIGFjY2VzbyBhIHNlcnZpY2lvcyBiw6FzaWNvcyDigJMgU0guSDJPLkJBU1cuWlMNCg0KIyA0KSBHcsOhZmljYXM6DQoNCiMgQW7DoWxpc2lzIHVuaWRpbWVuc2lvbmFsDQoNCiMgMS4gRGlzdHJpYnVjacOzbiBkZWwgUElCIHBlciBjw6FwaXRhICgyMDIyKQ0KDQpEaXN0cmlidWNpw7NuOiBTZSBvYnNlcnZhIHVuYSBkaXN0cmlidWNpw7NuIGFzaW3DqXRyaWNhIGhhY2lhIGxhIGRlcmVjaGEuDQoNClRlbmRlbmNpYSBnZW5lcmFsOiBMYSBtYXlvcsOtYSBkZSBsb3MgcGHDrXNlcyB0aWVuZW4gdW4gUElCIHBlciBjw6FwaXRhIGluZmVyaW9yIGEgbG9zIFwkMTAsMDAwIFVTRC4NCg0KVW4gbsO6bWVybyByZWR1Y2lkbyBkZSBwYcOtc2VzIGNvbW8gU3VpemEsIE5vcnVlZ2EsIENhdGFyIHkgRXN0YWRvcyBVbmlkb3MgbXVlc3RyYW4gbml2ZWxlcyBleHRyZW1hZGFtZW50ZSBhbHRvcyAoXD42MCwwMDAgVVNEKS4NCg0KRXN0byByZWZsZWphIGxhIGRlc2lndWFsZGFkIGVjb27Ds21pY2EgZ2xvYmFsLCBkb25kZSBtdWNob3MgcGHDrXNlcyBzaWd1ZW4gZW4gZGVzYXJyb2xsbyBtaWVudHJhcyBxdWUgdW5hIG1pbm9yw61hIHBvc2VlIGVjb25vbcOtYXMgYWx0YW1lbnRlIGRlc2Fycm9sbGFkYXMuDQoNCiMgMi5Fc3BlcmFuemEgZGUgVmlkYSBwb3IgUmVnaW9uICgyMDIyKQ0KDQpEaXN0cmlidWNpw7NuIGdlbmVyYWw6IExhIGdyw6FmaWNhIG11ZXN0cmEgbGFzIGRpZmVyZW5jaWFzIGVuIGxhIGVzcGVyYW56YSBkZSB2aWRhIGFsIG5hY2VyIGVudHJlIHJlZ2lvbmVzLg0KDQpTZSBvYnNlcnZhIHF1ZSBsYXMgcmVnaW9uZXMgZGUgRXVyb3BhIHkgQW3DqXJpY2EgZGVsIE5vcnRlIHRpZW5lbiB1biByYW5nbyBkZSBlc3BlcmFuemEgZGUgdmlkYSBiYXN0YW50ZSBhbHRvIHkgZXN0cmVjaG8sIG1pZW50cmFzIHF1ZSDDgWZyaWNhIFN1YnNhaGFyaWFuYSBtdWVzdHJhIHVuYSBtYXlvciBkaXNwZXJzacOzbiB5IHZhbG9yZXMgbcOhcyBiYWpvcy4NCg0KQWxndW5hcyByZWdpb25lcywgY29tbyBBc2lhIE9yaWVudGFsLCB0aWVuZW4gdW5hIGFsdGEgZXNwZXJhbnphIGRlIHZpZGEsIHBlcm8gY29uIHZhcmlhYmlsaWRhZCBkZXBlbmRpZW5kbyBkZSBsb3MgcGHDrXNlcyBkZW50cm8gZGUgbGEgcmVnacOzbi4NCg0KVmFsb3JlcyBleHRyZW1vcyAob3V0bGllcnMpOiBTZSBwdWVkZW4gaWRlbnRpZmljYXIgYWxndW5hcyByZWdpb25lcyBjb24gdmFsb3JlcyBhdMOtcGljb3MsIGNvbW8gcGHDrXNlcyBjb24gbml2ZWxlcyBleHRyZW1hZGFtZW50ZSBhbHRvcyBkZSBlc3BlcmFuemEgZGUgdmlkYSAocG9yIGVqZW1wbG8sIGVuIEV1cm9wYSBvIEFtw6lyaWNhIGRlbCBOb3J0ZSkuDQoNClRlbmRlbmNpYSBnZW5lcmFsOiBSZWdpb25lcyBjb21vIMOBZnJpY2EgU3Vic2FoYXJpYW5hIHkgQXNpYSBNZXJpZGlvbmFsIHRpZW5lbiB1bmEgbWVkaWEgZGUgZXNwZXJhbnphIGRlIHZpZGEgbcOhcyBiYWphIHkgdW5hIGdyYW4gZGlzcGVyc2nDs24sIGxvIHF1ZSBpbmRpY2EgZGlzcGFyaWRhZGVzIHNpZ25pZmljYXRpdmFzIGVudHJlIGxvcyBwYcOtc2VzIGRlbnRybyBkZSBlc3RhcyByZWdpb25lcy4NCg0KIyAzLiBHcmFmaWNvIGRlIGRlbnNpZGFkIGRlbCBDTzINCg0KRGlzdHJpYnVjacOzbjogQWx0YW1lbnRlIGFzaW3DqXRyaWNhIGNvbiB1bmEgbGFyZ2EgY29sYSBkZXJlY2hhLg0KDQpUZW5kZW5jaWEgZ2VuZXJhbDoNCg0KTGEgbWF5b3LDrWEgZGUgcGHDrXNlcyBlbWl0ZW4gbWVub3MgZGUgNSB0b25lbGFkYXMgZGUgQ0/igoIgcGVyIGPDoXBpdGEuDQoNCkNhc29zIGV4dHJlbW9zIGNvbW8gQ2F0YXIgeSBFbWlyYXRvcyDDgXJhYmVzIFVuaWRvcyBzdXBlcmFuIGxhcyAyNSB0b25lbGFkYXMsIGRlc3RhY2FuZG8gY29tbyBvdXRsaWVycy4NCg0KRXN0byByZWZsZWphIHVuYSBlbm9ybWUgZGVzaWd1YWxkYWQgZW4gdMOpcm1pbm9zIGRlIHJlc3BvbnNhYmlsaWRhZCBhbWJpZW50YWwgeSBkZXNhcnJvbGxvIGVjb27Ds21pY28uDQoNCiMgNC4gU2NhdHRlclBsb3QgZGVsIFBJQiB2cyBsYSBFc3BlcnphbnphIGRlIFZpZGENCg0KU2Ugb2JzZXJ2YSB1bmEgY29ycmVsYWNpw7NuIHBvc2l0aXZhOiBsb3MgcGHDrXNlcyBjb24gbWF5b3IgUElCIHBlciBjw6FwaXRhIHRpZW5kZW4gYSB0ZW5lciB1bmEgbWF5b3IgZXNwZXJhbnphIGRlIHZpZGEuDQoNCkV4aXN0ZW4gZXhjZXBjaW9uZXMgbm90YWJsZXMsIGNvbW8gRXN0YWRvcyBVbmlkb3MsIHF1ZSB0aWVuZSB1biBQSUIgYWx0byBwZXJvIHVuYSBlc3BlcmFuemEgZGUgdmlkYSBtw6FzIGJhamEgZW4gY29tcGFyYWNpw7NuIGNvbiBvdHJvcyBwYcOtc2VzIGRlIGluZ3Jlc28gc2ltaWxhci4NCg0KTGEgZXNjYWxhIGxvZ2Fyw610bWljYSBwZXJtaXRlIG9ic2VydmFyIGNvbiBtYXlvciBjbGFyaWRhZCBsb3MgcGHDrXNlcyBkZSBiYWpvcyB5IG1lZGlhbm9zIGluZ3Jlc29zLCBxdWUgZGUgb3RybyBtb2RvIHF1ZWRhcsOtYW4gYWdydXBhZG9zLg0KDQojIDUuIEJ1YmJsZVBsb3QgQWxmYWJldGl6YWNpb24gQWd1YSBQb2JsYWNpb24gKDIwMjIpDQoNCkVzIHByb2JhYmxlIHF1ZSBsb3MgcGHDrXNlcyBjb24gdW5hIG1heW9yIHRhc2EgZGUgYWxmYWJldGl6YWNpw7NuIHRhbWJpw6luIHByZXNlbnRlbiB1biBtYXlvciBwb3JjZW50YWplIGRlIGFjY2VzbyBhIGFndWEgYsOhc2ljYS4NCg0KU2UgcHVlZGVuIG9ic2VydmFyIGV4Y2VwY2lvbmVzIGVuIHBhw61zZXMgY29uIGRpZmVyZW50ZXMgbml2ZWxlcyBkZSBwb2JsYWNpw7NuLCBkb25kZSBsYSBmYWx0YSBkZSBhbGZhYmV0aXphY2nDs24gbyBkZSBhY2Nlc28gYSBhZ3VhIGLDoXNpY2EgcHVlZGUgc2VyIG3DoXMgcHJvbnVuY2lhZGEuDQoNCiMgVG9kYXbDrWEgbWUgZmFsdGEgcGVybyBsYSBlc3RydWN0dXJhIHF1ZSB5YSBlc3TDoSBsYXMgc2VjY2lvbmVzIGRlIC5yLCBlcyBkYW5kb2xlIGFsIGMrIGRlIGFycmliYSwgb3BjacOzbiAuciwgeSBkZSBhaMOtIHNlIHBvbmUgZWwgY29kaWdvIGRlIGltcG9ydGFjacOzbiBlbiBlbCBtZWRpbyBkZSBlc3TDoXMgc2VjY2lvbmVzIGRlIHRleHRvDQoNCiMgTm90YTogU2kgbm8gbG9ncmFtb3MsIGxpdCBzb2xvIGNvcGlhbW9zIGVsIGNvZGlnby4NCg==